System and method for low latency acknowledgements

ABSTRACT

A system and method for low latency acknowledgements includes a first communication unit receiving a data message from a second communication unit on a data channel, decoding the data message, and transmitting, in response to the decoding, an acknowledgement signal on a control channel to the second communication unit. The acknowledgement signal has a partially decodable structure. Transmitting the acknowledgement signal further includes transmitting multiple repetitions of a same time domain waveform during one symbol period. In some embodiments, transmitting the acknowledgement signal further transmitting K repetitions of a same time domain waveform with a frequency domain characteristic consisting of one non-zero tone for every K tones, K being a positive integer. In some embodiments, the acknowledgement signal is processable by the second communication unit using a first N out of the K repetitions, N being a positive integer less than K.

RELATED APPLICATIONS

The present application is a continuation of U.S. patent applicationSer. No. 14/938,790, which was filed Nov. 11, 2015, and claims priorityto U.S. Provisional Patent Application No. 62/133,209, entitled “Systemand Method for Low Latency Acknowledgements,” which was filed Mar. 13,2015, each of which is hereby incorporated by reference in its entirety.

TECHNICAL FIELD

The present disclosure relates generally to communication methods forcomputing devices, and more particularly to low latencyacknowledgements.

BACKGROUND

Many of today's communication systems, such as third generation (3G),fourth generation (4G), and fifth generation (5G) mobile phone networks,exchange data and other information using one or more complex signalingand/or messaging protocols. One of the goals of these communicationsystems is the reliable and accurate exchange of data between basestations and user equipment (UE). For example, protocols using hybridautomatic repeat requests (HARQ) use combinations of error-detectingcodes and/or error correcting codes to determine when messages containerrors and to automate the correction of the errors without having toretransmit the messages. To support error detection and/or correction,HARQ introduces overhead into the communication system that may reducethe efficiency in the use of the communication channels.

Accordingly, it would be desirable to provide systems and methods forincreasing the efficiency of communications, such as by reducing theround trip time between the transmitting of a message and acorresponding acknowledgement of that message.

SUMMARY

According to some embodiments, a method of receiving and acknowledgingmessages by a first communication unit includes receiving a data messagefrom a second communication unit on a data channel, decoding the datamessage, and transmitting, in response to the decoding, anacknowledgement signal on a control channel to the second communicationunit. The acknowledgement signal has a partially decodable structure.Transmitting the acknowledgement signal further includes transmittingmultiple repetitions of a same time domain waveform during one symbolperiod.

According to some embodiments, a communication unit includes means forreceiving a data message from another communication unit on a datachannel means, means for decoding the data message, and means fortransmitting in response to the means for decoding, an acknowledgementsignal on a control channel to the another communication unit. Theacknowledgement signal has a partially decodable structure. Transmittingthe acknowledgement signal further includes transmitting multiplerepetitions of a same time domain waveform during one symbol period.

According to some embodiments, a non-transitory machine-readable mediumincludes a plurality of machine-readable instructions which whenexecuted by one or more processors associated with a communication unitare adapted to cause the one or more processors to perform a method. Themethod includes receiving a data message from another communication uniton a data channel, decoding the data message, and transmitting, inresponse to the decoding, an acknowledgement signal on a control channelto the another communication unit. The acknowledgement signal has apartially decodable structure. Transmitting the acknowledgement signalfurther includes transmitting multiple repetitions of a same time domainwaveform during one symbol period.

According to some embodiments, a non-transitory machine-readable mediumincludes a plurality of machine-readable instructions which whenexecuted by one or more processors associated with a communication unitare adapted to cause the one or more processors to perform a method. Themethod includes transmitting a data message to a receiver on a datachannel, receiving one or more first repetitions of an acknowledgementsignal from the receiver on a control channel, and decoding theacknowledgement signal prior to fully receiving a last repetition of oneor more second repetitions of the acknowledgement signal on the controlchannel. The acknowledgement signal has a partially decodable structure.Each repetition in the one or more first repetitions and the one or moresecond repetitions of the acknowledgement signal are repetitions of asame time domain waveform received during one symbol period.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a simplified diagram of a communication system according tosome embodiments.

FIG. 2 is a simplified diagram of an acknowledgement signal having apartially decodable structure according to some embodiments.

FIG. 3 is a simplified diagram of round trip times for acknowledgementsignals according to some embodiments.

FIG. 4 is a simplified diagram of round trip time savings when usingacknowledgement signals having a partially decodable structure accordingto some embodiments.

FIG. 5 is a simplified diagram of an acknowledgement signal having apartially decodable structure and using weighted overlap add roll offaccording to some embodiments.

FIG. 6 is a simplified diagram of a method of sending messages accordingto some embodiments.

FIG. 7 is a simplified diagram of a method of receiving messagesaccording to some embodiments.

DETAILED DESCRIPTION

In the following description, specific details are set forth describingsome embodiments consistent with the present disclosure. It will beapparent, however, to one skilled in the art that some embodiments maybe practiced without some or all of these specific details. The specificembodiments disclosed herein are meant to be illustrative but notlimiting. One skilled in the art may realize other elements that,although not specifically described here, are within the scope and thespirit of this disclosure. In addition, to avoid unnecessary repetition,one or more features shown and described in association with oneembodiment may be incorporated into other embodiments unlessspecifically described otherwise or if the one or more features wouldmake an embodiment non-functional.

FIG. 1 is a simplified diagram of a communication system 100 accordingto some embodiments. As shown in FIG. 1, includes two communicationunits 110 and 120 coupled together using a medium 130. In some examples,communication units 110 and 120 may each be representative of any typeof communication unit typically found in modern networks, such as anetwork node, a switch, a router, a wireless access point, a server, aworkstation, a PC, a tablet, a mobile phone, a smart phone, a userequipment, a base station, and/or the like. In some examples,communication units 110 and 120 may each be an integrated circuit,system on a chip (SoC), and/or the like incorporated in anothercommunication and/or computing device such as a network node, a switch,a router, a wireless access point, a server, a workstation, a PC, atablet, a mobile phone, a smart phone, a user equipment, a base station,and/or the like. As shown, communication unit 110 includes a processor112, a signal processor 114, a transmitter 116, and a receiver 118.Similarly, communication unit 120 includes a processor 122, a signalprocessor 124, a transmitter 126, and a receiver 128. In some examples,processors 112 and/or 122 may control operation and/or execution ofhardware and/or software of the respective communication unit 110 and/or120. Although only one processor 112 or 122 is shown, communicationunits 110 and/or 120 may each include multiple processors, multi-coreprocessors, field programmable gate arrays (FPGAs), application specificintegrated circuits (ASICs), and/or the like. In some examples, signalprocessors 114 and/or 124 may be responsible for analyzing signals,modulating and/or demodulating signals, and/or the like for therespective communication unit 110 and/or 120 and/or the respectiveprocessor 112 and/or 122. Although only one signal processor 114 or 124is shown, communication units 110 and/or 120 may each include multiplesignal processors such as digital signal processors (DSPs),coder-decoders (CODECs), modulator-demodulators (MODEMs), FPGAs, ASICs,and/or the like.

Transmitters 116 and/or 126 in cooperation with receivers 128 and/or 118may be responsible for exchanging information, data, controlinformation, metadata, and/or the like between communication units 110and/or 120. In some examples, transmitter 116 may transmit one or moresignals, messages, packets, and/or the like using medium 130 to receiver128 and transmitter 126 may transmit one or more signals, messages,packets, and/or the like using medium 130 to receiver 118. In someexamples, medium 130 may be any kind of transmission medium suitable forexchanging information and data. In some examples, medium 130 mayinclude one or more wires and/or cables such as coaxial cables,twisted-pair cables, wires, and/or the like. In some examples, medium130 may be a wireless medium (e.g., air) with or without one or morewave guides. In some examples, medium 130 may be a shared mediumsupporting multiple simultaneous signals using one or more forms ofmultiplexing including time division multiplexing, frequency divisionmultiplexing, spread spectrum, and/or the like to create multiplechannels in medium 130. In some examples, medium 130 may be used tosimultaneously carry signals transmitted from transmitter 116 toreceiver 128 and from transmitter 126 to receiver 118. In some examples,medium 130 may also be used to simultaneously carry signals transmittedto and received by communication units other than communication units110 and/or 120.

Although not shown in FIG. 1, one of ordinary skill would recognize thatdifferent combinations of internal devices are possible forcommunication units 110 and/or 120 that are consistent with the variousembodiments described in further detail below. In some examples, one ormore of signal processors 114 and 124 may be omitted, transmitter 116and receiver 118 may be part of a combined transceiver, transmitter 126and receiver 128 may be part of a combined transceiver, and/or the like.In some examples, communication units 110 and/or 120 may additionallyinclude memory (not shown). In some examples, the memory may include oneor more types of machine readable media. Some common forms of machinereadable media may include floppy disk, flexible disk, hard disk,magnetic tape, any other magnetic medium, CD-ROM, any other opticalmedium, punch cards, paper tape, any other physical medium with patternsof holes, RAM, PROM, EPROM, FLASH-EPROM, any other memory chip orcartridge, and/or any other medium from which a processor or computer isadapted to read.

According to some embodiments, and without loss of generality, use ofcommunication system 100 to send data is described for the transmittingof data from communication unit 110 (sometimes referred to as thesender) to communication unit 120 (sometimes referred to as thereceiver). One of ordinary skill would understand that the roles ofcommunication units 110 and 120 may be reversed when communication unit120 transmits data to communication unit 110 and/or communication units110 and 120 may simultaneously be transmitting data to each other. Asshown in FIG. 1, the transmitting of the data from communication unit110 to communication unit 120 is described beginning with thetransmitting of a message or data packet 140 by transmitter 116 ofcommunication unit 110. In some examples, message 140 may be generatedby processor 112, passed to signal processor 114 for further processing,and then provided by signal processor 114 to transmitter 116. Message140 is then transmitted by transmitter 116 using medium 130. Whenmessage 140 is received by receiver 126, it may be passed to signalprocessor 124 and/or processor 122 for analysis. As part of the analysiswithin communication unit 120, message 140 may be examined to determinewhether it has been received error-free by receiver 128. In someexamples, the analysis may include utilizing error detection codesand/or error correction codes within message 140 to determine whethermessage 140 is error free and/or may be corrected to an error freestate. In some examples, the error detection and/or correction codes mayinclude one or more parity bits, check sums, cyclic redundancy check(CRC) codes, hamming codes, and/or the like.

Based on whether message 140 is received error-free, communication unit120 may formulate a response to message 140 in the form of anacknowledgement message 150 for transmitting back to communication unit110 over medium 130 using transmitter 126 and receiver 118. In someexamples, acknowledgement message 150 may include a positiveacknowledgement when message 140 is received error free, a negativeacknowledgement when message 140 is received with errors, a request forerror correction codes, and/or the like. In some examples,acknowledgement message 150 may be transmitted in piggy-back fashionalong with other data being transmitted in a message from communicationunit 120 to communication unit 110.

In response to receiving acknowledgement message 150, communication unit110 examines acknowledgement message 150 to determine what type ofacknowledgement is included therein. Based on the type ofacknowledgement included in acknowledgement message 150, communicationunit 110 may send another message or data packet 160 to communicationunit 120 over medium 130 using transmitter 116 and receiver 128. Whenthe acknowledgement is a positive acknowledgement, message 160 mayinclude a next data packet for communication unit 120. When theacknowledgement is a negative acknowledgement, message 160 may include aretransmitting of the data from message 140. And, when theacknowledgement is a request for error correction codes, message 160 mayinclude the error correction codes for message 140 as is describedfurther below.

According to some embodiments, communications units 110 and/or 120 mayencode the signals and/or messages 140, 150, and/or 160 using protocolsinvolving hybrid automatic repeat requests (HARQs). The HARQ protocolstypically use a combination of error detecting codes and/or errorcorrecting codes to help improve data transmission reliability. In someexamples, when Type I HARQ is used, each message, such as messages 140and/or 160, transmitted by a sender, such as communication unit 110,includes both error detecting codes and error correcting codes. When areceiver, such as communication unit 120, receives the message, theerror detecting codes may be used to determine whether there are errorsin the message and the error correcting codes may be used to recover anerror-free version of the message. In cases where the signal quality istoo low and there are too many errors, the message is rejected and thereceiver requests that the sender retransmit the message, such as bysending acknowledgement message 150 with a negative acknowledgement. Insome examples, when Type II HARQ is used, each message transmittedincludes just the error detecting codes. When the receiver detects anerror, the receiver may then request that the sender transmit the errorcorrecting codes, such as by sending acknowledgement 150 with a requestfor error correcting codes. After receiving the error correcting codes,the receiver attempts to recover an error-free version of the message,and when the receiver cannot recover an error-free version of themessage, the receiver requests that the transmitter retransmit themessage, such as by sending acknowledgement message 150 with a negativeacknowledgement. Type I HARQ is typically more efficient in low qualitysignal channels and Type II HARQ is typically more efficient in higherquality signal channels.

As shown in FIG. 1, a common feature of both Type I HARQ and Type IIHARQ, as well as stop and wait and/or sliding windows protocols, is thatthe receiver of a data message 140 transmits a status or acknowledgementmessage 150 to the transmitter to indicate the status of the datamessages that are received. In Type I HARQ, this may include bothacknowledgements of the ability to obtain an error-free version of themessage (e.g., a positive acknowledgement) or to request a resend (e.g.,a negative acknowledgement). In Type II HARQ, this may includeacknowledgements of the ability to obtain an error-free version of themessage (e.g., a positive acknowledgement), a request for the errorcorrecting codes, or a request for a resend (e.g., a negativeacknowledgement). In some examples, the status and/or acknowledgementmessages 150 may be sent in a separate control channel from the datachannel used to transmit the data messages 140.

One way to reduce the overhead of the acknowledged messaging, and thusincrease transmission efficiency, is to reduce the amount of latency orround trip time (RTT) between the transmitting of the data message 140by the sender and the receipt and decoding, by the sender, of the statusor acknowledgement message 150 returned by the receiver. When the roundtrip time is reduced, the sender may be able to more quickly transmitthe error correcting codes (e.g., for Type II HARQ), retransmit the datamessage, and/or transmit the next data message as shown by message 160.Thus, less communication channel time is spent waiting for the statusand/or acknowledgement messages 150 and more of the communicationchannel bandwidth may be used for data transmission.

One way to reduce the latency or RTT time before the status and/oracknowledgement messages 150 are received and decoded by the sender ofdata message 140 is to use a signal structure for the status and/oracknowledgement messages 150 that could be decoded within a shorterperiod of time in comparison to reception of the full transmittedacknowledgement message. According to some embodiments, one such signalstructure employing a shorter reception period is to encode statusand/or acknowledgement message 150 using an acknowledgement signal witha partially decodable signal structure. In some examples, a benefit ofthe proposed partially decodable symbol structure is to have thereceiver of data message 140 (i.e., the transmitter of acknowledgementmessage 150) send acknowledgement message 150 using a same symbolduration as other regular data/control symbols to maintain orthogonalityand limit interference with other communication channels, while enablingpartial symbol processing and decoding of acknowledgement message 150 toachieve a reduction in latency and/or RTT.

FIG. 2 is a simplified diagram of an acknowledgement signal 200 having apartially decodable structure according to some embodiments. As shown inFIG. 2, acknowledgement signal 200 includes a frequency domaincharacteristic 210 where one non-zero tone is sent for every K tones. Inthe example, K is eight, and frequency domain characteristic 210includes a non-zero component at every eighth tone in the frequencyspectrum. This is shown by a non-zero value 211 for the zero tone, anon-zero value 212 for the eighth tone, a non-zero value 213 at thesixteenth tone, a non-zero value 214 for the twenty-fourth tone, and soforth. FIG. 2 also shows a time domain waveform 220 for acknowledgementsignal 200 where a same waveform is repeated K=8 times as shown by therepetitions 211-218 of acknowledgement signal 200. In some examples, theK repetitions are transmitted using one symbol period. And although theembodiments of FIG. 2 show the acknowledgement signal using a K value of8, one of ordinary skill would understand that other K values or signalfractions are both practical and possible. One of ordinary skill wouldalso understand that even though the frequency scale of FIG. 2 is basedon frequency units of 1, any suitable scaling of the frequency ispossible based on the bandwidth and/or modulations frequencies availablefor acknowledgement signal 200. In addition, one of ordinary skill wouldalso understand that the heights of non-zero values 211-214 and theshape of repetitions 221-228 are representative only and that, inpractice, the heights of the non-zero tones and the shape of therepetitions would vary based on a value encoded onto acknowledgementsignal 200. In some examples, because of its discrete Fourier transformproperties, acknowledgement signal 200 is partially decodable when usedin conjunction with orthogonal frequency division multiplexing (OFDM).

In some examples, the partial OFDM symbol may be used to reduce the RTTby allowing the sender to receive and react to acknowledgement signal200 after receiving any one of the repetitions 221-228 and before thereceiver returns all of the repetitions 221-228 of acknowledgementsignal 200. This provides additional processing time for the handling ofother messaging. In some examples, repetition of the partially decodableOFDM symbols results in the transmitting of a complete and fullydecodable acknowledgement signal 200 as is discussed in further detailbelow. In some examples, the partially decodable symbols may also beprocessed using weighted overlap add (WOLA), from either the transmitteror receiver side, to address concerns about inter-channel interference(ICI) due to partial symbol reception, reduced signal to noise ratio,and/or the like.

According to some embodiments, use of acknowledgement signal 200 mayprovide one or more advantages over systems not using acknowledgementsignals with a partially decodable structure. In some examples,acknowledgement signal 200 may provide an early receivable status,control, and/or acknowledgement message for use during HARQ. In someexamples, the reduced RTT when using acknowledgement signal 200 mayprovide additional processing time to handle other messaging. In someexamples, by controlling the value of K and the 1/K fraction of thesymbol that is partially decodable, a tradeoff between time spent onreceiver processing of acknowledgement signal 200 on the communicationchannel and the processing (power) gain may be optimized to achievedifferent processing timeline throughput properties, communicationchannel efficiencies, and/or the like. In some examples, acknowledgementsignal 200 and its partially decodable properties introduce no ICI fromthe control channel on which acknowledgement signal 200 is sent to thedata channel on which the data message is sent because a full symbol isalways sent even when acknowledgement signal 200 is recognized andreacted to before all of the repetitions 221-228 are received. In someexamples, the ICI from the data channel to the control channel due tothe partial reception may be mitigated using a suitable guard bandand/or WOLA.

FIG. 3 is a simplified diagram of round trip times for acknowledgementsignals according to some embodiments. FIG. 3 shows three scenarios 300,330, and 360 for RTT using acknowledgement signals with variousproperties. In some examples, scenarios 300, 330, and/or 360 maydemonstrate the exchange of data and control information in data andcontrol channels between communication units, such as communicationunits 110 and/or 120. Messaging using a transmission time interval (TTI)length of one symbol with a fully decodable acknowledgement signal isshown in a scenario 300. Scenario 300 shows activity over six TTIs301-306 for both a data channel 310 and a control channel 320. As shown,an optional scheduled delay 311 is inserted into data channel 310 duringTTI 301. After scheduled delay 311, a first data packet is transmittedin data channel 310 during TTI 302 as first data transmission 312. TTI303 is then idle while the receiver of the first data packet 312 usesTTI 303 to process first data transmission 312 to determine whether thefirst data packet is received without error and to determine the type ofacknowledgement (positive, negative, ECC request, and/or the like)should be returned. During TTI 304, the receiver returns a fullydecodable acknowledgement signal 325 using control channel 320 thatencodes the acknowledgement. TTI 305 is then idle while the transmitterof first data transmission 312 processes fully decodable acknowledgementsignal 325 to determine whether to send a second data packet, resend thefirst data packet, or send ECC information. TTI 306 is then used by thetransmitter to transmit a second data transmission 313 including thefirst data packet, the second data packet, or the ECC information asappropriate. Thus, the RTT with the fully decodable acknowledgementsignal 325 is typically four symbol periods with a worst-case time ofsix symbol periods when scheduled delay 311 occurs and secondtransmission 313 is used.

Messaging using a TTI length of two symbols and relaxed timing is shownin a scenario 330. Scenario 330 shows activity over five TTIs 331-335for both a data channel 340 and a control channel 350. As shown, anoptional scheduled delay 341 is inserted into data channel 340 duringTTI 331. After scheduled delay 341, a first data packet is transmittedin data channel 340 during TTI 332 as a first data transmission 342. Thereceiver then returns a pilot 351 and channel state feedback 352 incontrol channel 350 during TTI 333 while the receiver concurrentlydecodes the first data packet included in first data transmission 342.The receiver then, based on the decoding of the first data packet,transmits a suitable acknowledgement signal 353 during TTI 334 incontrol channel 350. As shown, acknowledgement signal 353 occupies afull symbol period and a second full symbol period during the secondhalf of TTI 334 is then idle The sender may begin processing theacknowledgement signal during the second half of TTI 334 to determinewhether the sender should resend the first data packet, send a seconddata packet, or send ECC information in data channel 340 during TTI 335as a second data transmission 343. Thus, the RTT is reduced because datachannel 340 does not remain idle for a full TTI between theacknowledgement signal and second data transmission 343, such as is thecase for TTI 305 between acknowledgement signal 325 and second datatransmission 313. Thus, in scenario 330, the RTT is typically six symbolperiods with a worst case time of ten symbol periods when scheduleddelay 341 occurs and second data transmission 343 is used.

Scenario 360 demonstrates the advantages of using an acknowledgementsignal with a partially decodable structure, such as the acknowledgementsignal of FIG. 2. Scenario 360 shows messaging using a TTI length of twosymbols with a tightened timeline and use of the acknowledgement signalwith a partially decodable structure. Scenario 360 shows activity overfour TTIs 361-364 for both a data channel 370 and a control channel 380.As shown, an optional scheduled delay 371 is inserted into data channel370 during TTI 361. After scheduled delay 371, a first data packet istransmitted in data channel 370 during TTI 362 as a first datatransmission 372. The receiver then returns pilot and channel statefeedback 381 in control channel 380 during a first symbol of TTI 363while the receiver concurrently decodes the first data packet includedin first data transmission 372. The receiver then, based on the decodingof the first data packet, transmits a suitable acknowledgement signalduring the second symbol of TTI 363 in control channel 380. As shown,the acknowledgement signal has a partially decodable structure thatincludes two repetitions 382 and 383. When the sender is able to decodethe acknowledgement signal based on the first repetition 382, the sendermay begin processing the acknowledgement signal during TTI 363 todetermine whether the sender should resend the first data packet, send asecond data packet, or send ECC information in data channel 370 duringTTI 364 as a second data transmission 373. Thus, the RTT is furtherreduced over scenarios 300 and 330 because a gap in data channel 370used for processing the acknowledgement signal is just a single TTI(363) rather than three TTIs (303-305) as shown in scenario 300 or twoTTIs (333 and 334) as shown in scenario 330. Using the messaging ofscenario 360, a typical RTT of four symbol periods (as good as the fullacknowledgement usage in scenario 300 despite the use of the longer twosymbol TTIs) is obtained along with a worst-case time of eight symbolperiods when scheduled delay 371 and second data transmission 373 areused.

Although not shown, additional scenarios are possible, includingmodifying scenario 300 to use an acknowledgement signal with a partiallydecodable structure during TTI 303, which results in a typical RTT ofthree symbol periods and a worst-case time of five symbol periods. Thus,the use of acknowledgement signals with a partially decodable structuremay be used to reduce the typical RTT time by one or two symbol periodsand the worst-case time by two or four symbol periods, depending uponwhether TTI lengths of one or two symbol periods are used.

FIG. 4 is a simplified diagram of round trip time savings when usingacknowledgement signals having a partially decodable structure accordingto some embodiments. Scenario 400 shows a comparison of a message 410with a fully decodable acknowledgement signal and a message 420 with anacknowledgement signal with a partially decodable structure thatincludes two repetitions. Message 410 includes a cyclic prefix (CP) 411and a fully decodable acknowledgement signal 412, which uses a fullsymbol to transmit. In contrast, message 420 includes a cyclic prefix(CP) 421 and an acknowledgement signal with a partially decodablestructure including a first repetition 422 and a second repetition 423.In some examples, the acknowledgement signal with a partially decodablestructure may be consistent with the acknowledgement signals with apartially decodable structure described above with respect to FIGS. 2and 3. Comparison of messages 410 and 420 demonstrates the round triptime advantages of acknowledgement signals with a partially decodablestructure. More specifically, fully decodable acknowledgement signal 412is not decodable until it is fully transmitted and received. Incontrast, the acknowledgement signal with a partially decodablestructure of message 420 may be decoded after reception of firstrepetition 422 allowing a response to message 420 to be formatted andmade ready for transmitting while second repetition 423 is beingtransmitted. Thus, in message 420, one half of the acknowledgementtransmission time may be freed up for other processing allowing the RTTto be correspondingly reduced. In some examples, decoding theacknowledgement signal with a partially decodable structure based onjust first repetition 422 may result in a reduction in the signal tonoise ratio for the acknowledgement signal portion of message 420relative to the signal to noise ratio for message 410 with the fullydecodable acknowledgement signal 412.

Scenario 450 shows a comparison of a message 460 with a fully decodableacknowledgement signal and a message 470 with a acknowledgement signalwith a partially decodable structure that includes three repetitionsduring the same corresponding time interval. Message 460 includes acyclic prefix (CP) 461 and a fully decodable acknowledgement signal 462.In contrast, message 470 includes a cyclic prefix (CP) 471 followed by afirst 472, second 473, and third 474 repetition of an acknowledgementsignal with a partially decodable structure. In some examples, theacknowledgement signal with a partially decodable structure may beconsistent with the acknowledgement signals with a partially decodablestructure described above with respect to FIGS. 2 and 3. Comparison ofmessages 460 and 470 demonstrates the round trip time advantages ofacknowledgement signals with a partially decodable structure. Morespecifically, fully decodable acknowledgement signal 462 is notdecodable until it is fully transmitted and received. In contrast, theacknowledgement signal with a partially decodable structure of message470 may be decoded after reception of first repetition 472 or secondrepetition 473 allowing a response to message 470 to be formatted andmade ready for transmitting while the remaining repetitions are beingtransmitted. Thus, in message 470, one third or two thirds of theacknowledgement transmission time may be freed up for other processingallowing the RTT to be correspondingly reduced. In some examples,decoding the acknowledgement signal with a partially decodable structurebased on just first repetition 472 may result in a reduction in thesignal to noise ratio for the acknowledgement signal portion of message470 relative to the signal to noise ratio for message 460 with the fullydecodable acknowledgement signal 462, and decoding the acknowledgementsignal with a partially decodable structure based on the first 472 andsecond 473 repetitions may result in a reduction in the signal to noiseratio for the acknowledgement signal portion of message 470 relative tothe signal to noise ratio for message 460 with the fully decodableacknowledgement signal 462. In some examples, a trade-off between RTTreduction and reduction in signal to noise ratio may be used to balancethroughput for the data channel versus levels of noise in the controlchannel.

In some examples using similar message durations, a acknowledgementsignal with a partially decodable structure that includes fourrepetitions that take the same time to transmit as a corresponding fullydecodable acknowledgement signal may be decoded after the first, second,or third repetition. In some examples, this may be used to provideadditional time for decoding of the acknowledgement signal with apartially decodable structure and preparing a next data transmission atthe expense of signal to noise ratio, with the reduction in signal tonoise ratio dependent on the number of repetitions of theacknowledgement signal used for the decoding. In some examples, usingacknowledgement signals with a partially decodable structure includingmore than four repetitions may provide additional flexibility inbalancing gains in processing time and RTT versus reductions in signalto noise ratio.

In some embodiments, the acknowledgement signals with a partiallydecodable structure in FIG. 4 may also have other advantages. When anacknowledgement signal with a partially decodable structure istransmitted with full symbol length, there is no ICI from the controlchannel to the data channel. In some examples, there may be some ICIfrom the data channel to the control channel due to the loss oforthogonality in the acknowledgement signal with a partially decodablestructure and the partial reception of the acknowledgement signal with apartially decodable structure, but this is generally not a big concernfor the control channel. In some examples, the ICI floor from the datachannel to the control channel may be kept above 10 dB. In someexamples, the ICI floor from the data channel to the control channel maybe improved by using WOLA.

FIG. 5 is a simplified diagram of an acknowledgement signal having apartially decodable structure and using weighted overlap add (WOLA) rolloff according to some embodiments. In some examples, the acknowledgementsignal with a partially decodable structure of FIG. 5 is consistent withthe acknowledgement signals with a partially decodable structure ofFIGS. 2-4. As shown in FIG. 5, a time domain transmission window 510 anda power spectral density 520 of an acknowledgement signal with apartially decodable structure is shown that uses two thirds of a symbolwindow and a WOLA roll-off factor of one eighth. As shown by the timedomain transmission window 410, the acknowledgement signal with apartially decodable structure is provided over about 75% of the width ofa full symbol that has been broadened using a WOLA roll-off factor ofone eighth. The WOLA roll-off factor reduces the effects of using atransmission window with square edges. As shown, the acknowledgementsymbol with a partially decodable structure of FIG. 4 frees up about 25%of the symbol duration for additional processing time. In addition, thepower spectrum of the frequency domain characterization 420 shows apower loss of 1.9 dB and better frequency roll-off characteristics thanthe transmission window with square edges.

According to some embodiments, the acknowledgement signals with apartially decodable structure of FIGS. 2-5 may be used as an alternativeto and/or to supplement timing advance. In some examples, timing advancemay be used to gain processing time in an LTE base station/evolved nodeB (eNb) by allowing the acknowledgement signal to be returned early bysending it partway through the earlier symbol period. In some examples,timing advance works by balancing processing time between user equipmentand the LTE base station so that as the acknowledgement signal is sentearlier it reduces the processing time available to the data receiverand provides it to the data transmitter. In some examples,acknowledgement signal processing may be used to reduce the symboltransmission duration for the acknowledgement signal used during timingadvance. In some examples, the power savings due to the reduced power ofthe acknowledgement signal with a partially decodable structure is notachievable by timing advance.

According to some embodiments, additional techniques may be used toaddress any undesirable reduction in signal-to-noise ratio caused by theuse of acknowledgement signals with a partially decodable structure. Insome examples, frequency domain tone interleaving, such as that used byinterleaved single carrier frequency division multiplexing, may be usedto increase the power of the acknowledgement signals with a partiallydecodable structure. In some examples, the spatial diversity of thereceiver of the acknowledgement signals with a partially decodablestructure may be improved by adding one or more additional antennas.

FIG. 6 is a simplified diagram of a method 600 of sending messagesaccording to some embodiments. In some examples, one or more of theprocesses 610-690 of method 600 may be implemented, at least in part, inthe form of executable code stored on non-transitory, tangible, machinereadable media that when run by one or more processors (e.g., processors112 and/or 122 and/or signal processors 114 and/or 124) may cause theone or more processors to perform one or more of the processes 610-690.In some examples, method 600 may be used by a communication unit, suchas communication units 110 and/or 120, to transmit data to anothercommunication unit. In some embodiments, process 610 is optional and maybe omitted. In some embodiments, method 600 may be used to dividerepetitions of an acknowledgement signal with a partially decodablestructure into two groups: a first group of repetitions used to decodethe acknowledgement signal and a second group of repetitions that arenot included in the decoding.

At an optional process 610, a scheduled delay is used. In some examples,the sender of a data message, such as communication unit 110 and/or 120,may wait or delay one or more symbol periods or TTIs before beginningthe transmitting of the data message. In some examples, the scheduleddelay may be part of a larger communication protocol, to addresspossible signal collisions in a transmission medium, and/or the like. Insome examples, the sender may use a timer or similar mechanism to waitfor the one or more symbol periods or TTIs. In some examples, thescheduled delay may be consistent with any of the scheduled delays 311,341, and/or 371.

At a process 620, a data packet is transmitted. Using a transmitter,such as transmitter 116 and/or 126, the sender transmits at least aportion of the data in a data packet on a data or similar channel of atransmission medium, such as medium 130, to a receiver. In someexamples, the data channel may be data channels 310, 340, and/or 370 andthe data packet may be consistent with any of the data packets 312, 313,342, 343, 372, and/or 373.

At a process 630, the sender waits for an acknowledgement from thereceiver. After transmitting the data packet during process 620, thesender waits for the receiver of the data packet to acknowledge receiptof the data packet. In some examples, the sender may monitor a controlor similar channel for a signal, packet, message, and/or the likecontaining an acknowledgement of the data packet. In some examples, thesender may use a receiver, such as receiver 118 and/or 128, to detectsignals, framing, preambles, cyclic prefixes, and/or the like on thecontrol channel indicative of an acknowledgement. In some examples, thesender may by protocol, convention, and/or the like expect theacknowledgement signal to be received based on a period of time that isbased on a known symbol, TTI, and/or other related time interval. Insome examples, the length of delay may depend on a bandwidth of the datachannel, the size of the data packet, the amount of time the receiveruses to decode and check the data packet, and/or the like.

At a process 640, a first repetition of an acknowledgement with apartially decodable structure is received. In some examples, the sendermay use the receiver, such as receiver 118 and/or 128, to receive thefirst repetition of the acknowledgement. In some examples, the firstrepetition of the acknowledgement may be one of many repetitions of anacknowledgement signal with partially decodable properties. In someexamples, the first repetition may be consistent with any of therepetitions 221-228, 282, 283, 422, 423, and/or 472-274.

At a process 650, it is determined whether the first repetition of theacknowledgement is decodable. Depending on the signal to noise ratio ofthe control channel, it may not be possible for the sender to decode thefirst repetition of the acknowledgement received during process 640. Insome examples, the sender may analyze the first repetition of theacknowledgement to determine whether expected framing, frequencycomponents, and/or the like are present. In some examples, the sendermay validate the first repetition of the acknowledgement using parity,check sum, and/or other error detection approaches as part of thedecoding. When the first repetition of the acknowledgement is decodable,the acknowledgement is processed using a process 690. When the firstrepetition of the acknowledgement is not decodable, a second repetitionof the acknowledgement is received using a process 660.

At the process 660, a second repetition of the acknowledgement isreceived. In some examples, the sender may use the receiver, such asreceiver 118 and/or 128, to receive the second repetition of theacknowledgement. In some examples, the second repetition may beconsistent with any of the repetitions 221-228, 282, 283, 422, 423,and/or 472-274.

At a process 670, it is determined whether the combination of the firstand second repetitions of the acknowledgement is decodable. Depending onthe signal to noise ratio of the control channel, it may not be possiblefor the sender to decode the combination of the first and secondrepetitions of the acknowledgement received during process 660. In someexamples, the sender may analyze the combination of the first and secondrepetitions of the acknowledgement to determine whether expectedframing, frequency components, and/or the like are present. In someexamples, the sender may validate the combination of the first andsecond repetitions of the acknowledgement using parity, check sum,and/or other error detection approaches as part of the decoding. Whenthe combination of the first and second repetitions of theacknowledgement is decodable, the acknowledgement is processed using theprocess 690. When the combination of the first and second repetitions ofthe acknowledgement is not decodable, one or more additional repetitionsof the acknowledgement is received.

Depending on the number of repetitions of the acknowledgement in theacknowledgement signal, processes similar to processes 660 and 670 arerepeated until a kth and last repetition of the acknowledgement isreceived during process 680. In some examples, the sender may use thereceiver, such as receiver 118 and/or 128, to receive the kth repetitionof the acknowledgement. In some examples, the kth repetition may beconsistent with any of the repetitions 221-228, 282, 283, 422, 423,and/or 472-274.

At the process 690, the acknowledgement is processed. The combinedrepetitions of the acknowledgement received during processes 640, 660, .. . , and/or 680 are analyzed by the sender to determine the content ofthe acknowledgement. In some examples, the content of theacknowledgement may be a positive acknowledgement when the receiversuccessfully received and decoded the data packet transmitted duringprocess 620, a negative acknowledgement when the receiver was not ableto successfully receive or decode the data packet transmitted duringprocess 620, a request for error correction codes when Type II HARQ isused and errors were detected by the receiver in the data packettransmitted during process 620, and/or the like. Based on the content ofthe acknowledgement, the sender may then return to process 620 totransmit another data packet where, in response to a positiveacknowledgement, the another data packet is more data to be transmitted,in response to a negative acknowledgement, the another data packet is aresend of the data packet previously transmitted, and, in response to arequest for error correction codes, the another data packet includeserror correction codes for the data packet previously transmitted duringprocess 620.

As discussed above and further emphasized here, FIG. 6 is merely anexample which should not unduly limit the scope of the claims. One ofordinary skill in the art would recognize many variations, alternatives,and modifications. In some embodiments, method 600 may includeadditional processes for handling lost packets and/or unacknowledgedpackets. In some examples, the sender may start a timer aftertransmitting the data packet in process 620 and then retransmit the datapacket when no acknowledgement is received. In some examples, morecomplex combinations of acknowledgements than those described in process690 may be used, such as when an acknowledgement may acknowledge morethan one data packet, selective retransmittings are supported, and/orthe like, which are often practiced with sliding windows protocols. Insome embodiments, one or more of processes 650, 670, and/or the like maybe omitted when the transmitter waits until after receiving two or moreof the repetitions of the acknowledgement before attempting to decodethe acknowledgement. In some embodiments, the number of repetitions ofthe acknowledgement received and decoded may depend on how manyrepetitions are included in the acknowledgement. In some examples, thenumber of repetitions may be established by protocol, agreement betweenthe sender and receiver, and/or the like. In some embodiments, anadditional determination of whether the combined repetitions of theacknowledgement received during processes 640, 660, . . . , and 680 mayoccur between processes 680 and 690. In some examples, when the combinedrepetitions of the acknowledgement are not decodable, the sender mayassume that the acknowledgement is a negative acknowledgement duringprocess 690 so that the data packet transmitted during process 620 isretransmitted when method 600 returns to process 620.

FIG. 7 is a simplified diagram of a method 700 of receiving messagesaccording to some embodiments. In some examples, one or more of theprocesses 710-780 of method 700 may be implemented, at least in part, inthe form of executable code stored on non-transitory, tangible, machinereadable media that when run by one or more processors (e.g., processors112 and/or 122 and/or signal processors 114 and/or 124) may cause theone or more processors to perform one or more of the processes 610-690.In some examples, method 700 may be used by a communication unit, suchas communication units 110 and/or 120, to receive data from anothercommunication unit.

At a process 710, a data packet is received. Using a receiver, such asreceiver 118 and/or 128, the receiving communication unit, such ascommunication unit 110 and/or 120, receives a data packet on a data orsimilar channel of a transmission medium, such as medium 130, from asender. In some examples, the data channel may be data channels 310,340, and/or 370 and the data packet may be consistent with any of thedata packets 312, 3313, 342, 343, 372, and/or 373. In some examples, thedata packet may be the data packet transmitted during process 620 of acorresponding sender.

At a process 720, it is determined whether the data packet is receivedwith errors. In some examples, the receiver may use error detectingcodes, such as parity bits, check sums, CRC codes, and/or the likeincluded in the data packet received during process 710 to determinewhether the data packet includes errors. When no errors are detected, apositive acknowledgement is generated using a process 730. When errorsare detected, it is determined whether Type I HARQ is being used using aprocess 740.

At the process 730, a positive acknowledgement is generated. Anacknowledgement message is formed that includes a payload indicatingthat the data packet received during process 710 was received withouterrors. In some examples, the payload may include a packet and/or someother type of sequence identifier that identifies the data packet. Thepositive acknowledgement message is then transmitted using a process780.

At the process 740, it is determined whether Type I HARQ is being used.In some examples, Type I HARQ may be in use based on parameters of adata exchange protocol between the receiver and the send of the datapacket received during process 710. In some examples, the receiver maybe provisioned to use Type I HARQ. When Type I HARQ is being used, it isdetermined whether the error in the data packet detected during process720 may be corrected using a process 750. When Type I HARQ is not beingused, an acknowledgement that requests error correction codes isgenerated using a process 770.

At the process 750, it is determined whether the errors in the datapacket may be corrected. When Type I HARQ is being used to exchange databetween the receiver and the sender of the data packet received duringprocess 710, the data packet further includes error correction codesthat may be usable to correct the errors in the data packet receivedduring process 710. In some examples, the error correcting codes mayinclude parity bits, checksums, hamming codes, and/or the like. Usingthe error correcting codes in the data packet, the receiver determineswhether the errors detected during process 720 may be corrected so thatan error-free form of the data packet received during process 710 may beconstructed. When the errors are correctable and an error free datapacket is recovered, a positive acknowledgement is generated using theprocess 730. When the errors are not correctable, a negativeacknowledgement is generated using a process 760.

At the process 760, a negative acknowledgement is generated. Anacknowledgement message is formed that includes a payload indicatingthat the data packet received during process 710 was received witherrors and the correct data packet could not be recovered. The negativeacknowledgement message requests that the sender resend the data packetsent during process 710. In some examples, the payload may include apacket and/or some other type of sequence identifier that identifies thedata packet. The negative acknowledgement message is then transmittedusing the process 780.

At the process 770, an acknowledgement requesting error correction codesis generated. When TYPE II HARQ is being used to exchange data betweenthe receiver and the sender of the data packet received during process710, a receiver upon detecting errors in a data packet may request errorcorrection codes from the sender. To do this, the sender forms anacknowledgement message that includes a payload requesting errorcorrection codes for the data packet received during process 710 wasreceived with errors. In some examples, the payload may include a packetand/or some other type of sequence identifier that identifies the datapacket. The acknowledgement message requesting error correction codes isthen transmitted using the process 780.

At the process 780, repetitions of a acknowledgement are transmitted.Using the acknowledgement message generated during processes 730, 760,and/or 770, the receiver formats the acknowledgement message as anacknowledgement signal having partially decodable properties. In someexamples, the acknowledgement signal may be consistent with theacknowledgement signals of FIGS. 2-5 and the repetitions may beconsistent with any of the repetitions 221-228, 382, 383, 422, 423, 471,472, and/or 473. In some examples, the number of repetitions may be setbased on protocol settings, prior agreement between the receiver and thesender of the data packet received during process 710, and/or the like.In some examples, the repetitions may be transmitted one after anotherin a control or similar channel, such as any of control channels 320,350, and/or 380 using a transmitter, such as transmitter 116 and/or 126,back to the sender of the data packet received during process 710. Insome examples, the repetitions may be the repetitions received by thesender in corresponding processes 640, 660, . . . , and 680 of thesender. After transmitting the repetitions of the acknowledgement, thereceiver returns to process 710 to wait for another data packetcontaining a resend of the data packet previously received duringprocess 710, another data packet, or error correction codes for the datapacket previously received during process 710.

Some examples of communication units 110 and/or 120 may includenon-transitory, tangible, machine readable media that include executablecode that when run by one or more processors (e.g., processors 112and/or 122 and/or signal processors 114 and/or 124) may cause the one ormore processors to perform the processes of methods 600 and/or 700 asdescribed above. Some common forms of machine readable media that mayinclude the processes of methods 600 and/or 700 are, for example, floppydisk, flexible disk, hard disk, magnetic tape, any other magneticmedium, CD-ROM, any other optical medium, punch cards, paper tape, anyother physical medium with patterns of holes, RAM, PROM, EPROM,FLASH-EPROM, any other memory chip or cartridge, and/or any other mediumfrom which a processor or computer is adapted to read.

Although illustrative embodiments have been shown and described, a widerange of modification, change and substitution is contemplated in theforegoing disclosure and in some instances, some features of theembodiments may be employed without a corresponding use of otherfeatures. One of ordinary skill in the art would recognize manyvariations, alternatives, and modifications.

What is claimed is:
 1. A method of receiving and acknowledging messages,the method comprising: receiving, by a first communication unit, a datamessage from a second communication unit on a data channel; decoding, bythe first communication unit, the data message; and transmitting, by thefirst communication unit and in response to the decoding, anacknowledgement signal on a control channel to the second communicationunit, the acknowledgement signal having a partially decodable structure;wherein transmitting the acknowledgement signal further comprisestransmitting multiple repetitions of a same time domain waveform duringone symbol period.
 2. The method of claim 1, wherein transmitting theacknowledgement signal further comprises transmitting K repetitions of asame time domain waveform with a frequency domain characteristicconsisting of one non-zero tone for every K tones, K being a positiveinteger.
 3. The method of claim 2, wherein the acknowledgement signal isprocessable by the second communication unit using a first N out of theK repetitions, N being a positive integer less than K.
 4. The method ofclaim 2, wherein K and N are chosen to balance latency and reliability.5. The method of claim 1, further comprising modifying theacknowledgement signal to include a weighted overlap add (WOLA) rolloff.
 6. The method of claim 1, wherein, when the acknowledgement signalis a negative acknowledgement signal, the method further comprisesreceiving, by the first communication unit, a retransmission of the datamessage from the second communication unit.
 7. The method of claim 6,wherein a round trip time between the receiving of the data message andthe receiving of the retransmission of the data message is reducedrelative to use of a fully decodable acknowledgement signal.
 8. Acommunication unit comprising: means for receiving a data message fromanother communication unit on a data channel means; means for decodingthe data message; and means for transmitting in response to the meansfor decoding, an acknowledgement signal on a control channel to theanother communication unit, the acknowledgement signal having apartially decodable structure; wherein transmitting the acknowledgementsignal further comprises transmitting multiple repetitions of a sametime domain waveform during one symbol period.
 9. The communication unitof claim 8, wherein to transmit the acknowledgement signal the means fortransmitting is configured to transmit K repetitions of a same timedomain waveform with a frequency domain characteristic consisting of onenon-zero tone for every K tones, K being a positive integer.
 10. Thecommunication unit of claim 9, wherein the acknowledgement signal isprocessable by the another communication unit using a first N out of theK repetitions, N being a positive integer less than K.
 11. Thecommunication unit of claim 9, wherein K and N are chosen to balancelatency and reliability.
 12. The communication unit of claim 8, whereinthe means for transmitting modifies the acknowledgement signal toinclude a weighted overlap add (WOLA) roll off.
 13. The communicationunit of claim 8, wherein, when the acknowledgement signal is a negativeacknowledgement signal, the means for receiving is further configured toreceive a retransmission of the data message from the anothercommunication unit.
 14. The communication unit of claim 13, wherein around trip time between the receiving of the data message and thereceiving of the retransmission of the data message is reduced relativeto use of a fully decodable acknowledgement signal.
 15. A non-transitorymachine-readable medium comprising a plurality of machine-readableinstructions which when executed by one or more processors associatedwith a communication unit are adapted to cause the one or moreprocessors to perform a method, the method comprising: receiving a datamessage from another communication unit on a data channel; decoding thedata message; and transmitting, in response to the decoding, anacknowledgement signal on a control channel to the another communicationunit, the acknowledgement signal having a partially decodable structure;wherein transmitting the acknowledgement signal further comprisestransmitting multiple repetitions of a same time domain waveform duringone symbol period.
 16. The non-transitory machine-readable medium ofclaim 15, wherein transmitting the acknowledgement signal furthercomprises transmitting K repetitions of a same time domain waveform witha frequency domain characteristic consisting of one non-zero tone forevery K tones, K being a positive integer.
 17. The non-transitorymachine-readable medium of claim 16, wherein the acknowledgement signalis processable by the another communication unit using a first N out ofthe K repetitions, N being a positive integer less than K.
 18. Thenon-transitory machine-readable medium of claim 16, wherein K and N arechosen to balance latency and reliability.
 19. The non-transitorymachine-readable medium of claim 15, wherein the method furthercomprises modifying the acknowledgement signal to include a weightedoverlap add (WOLA) roll off.
 20. The non-transitory machine-readablemedium of claim 15, wherein, when the acknowledgement signal is anegative acknowledgement signal, the method further comprises receivinga retransmission of the data message from the another communicationunit.
 21. The non-transitory machine-readable medium of claim 20,wherein a round trip time between the receiving of the data message andthe receiving of the retransmission of the data message is reducedrelative to use of a fully decodable acknowledgement signal.
 22. Anon-transitory machine-readable medium comprising a plurality ofmachine-readable instructions which when executed by one or moreprocessors associated with a communication unit are adapted to cause theone or more processors to perform a method, the method comprising:transmitting a data message to a receiver on a data channel; receivingone or more first repetitions of an acknowledgement signal from thereceiver on a control channel, the acknowledgement signal having apartially decodable structure; and decoding the acknowledgement signalprior to fully receiving a last repetition of one or more secondrepetitions of the acknowledgement signal on the control channel;wherein each repetition in the one or more first repetitions and the oneor more second repetitions of the acknowledgement signal are repetitionsof a same time domain waveform received during one symbol period. 23.The non-transitory machine-readable medium of claim 22, wherein afrequency domain characteristic of the time domain waveform consists ofone non-zero tone for every K tones, K being equal to a sum of a numberof repetitions in the one or more first repetitions and a number ofrepetitions in the one or more second repetitions.
 24. Thenon-transitory machine-readable medium of claim 23, wherein the numberof repetitions in the one or more first repetitions is chosen to balancelatency and reliability.
 25. The non-transitory machine-readable mediumof claim 22, wherein each repetition in the one or more firstrepetitions and the one or more second repetitions of theacknowledgement signal includes a weighted overlap add (WOLA) roll off.26. The non-transitory machine-readable medium of claim 22, wherein around trip time between the transmitting of the data message andscheduling of a subsequent transmitting by is reduced relative to use ofa fully decodable acknowledgement signal.
 27. The non-transitorymachine-readable medium of claim 26, wherein the subsequent transmittingis a retransmitting of the data message.